﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using IndoReputation.Commons;

namespace IndoReputation.Models.BusinessObject
{
    public class MediaCategory : CommonEntity
    {
        /// <summary>
        /// Default Contructor
        /// </summary>
        public MediaCategory()
        { }

        [Required]
        public int ID
        {
            set;
            get;
        }

        [Required(ErrorMessage = "Please type the Name")]
        [StringLength(256, ErrorMessage = "String may not be longer than 256 characters")]
        [PlaceHolder("Enter name here")]
        public string Name
        {
            set;
            get;
        }

        [Required]
        [Display(Name = "Newspaper, Magazine, Journals")]
        public bool IsNewspaper
        {
            set;
            get;
        }

        [Required]
        [Display(Name = "Television")]
        public bool IsTV
        {
            set;
            get;
        }

        [Required]
        [Display(Name = "Radio")]
        public bool IsRadio
        {
            set;
            get;
        }

        [Required]
        [Display(Name = "Online News")]
        public bool IsOnlineNews
        {
            set;
            get;
        }

        [Required]
        [Display(Name = "Is Online ?")]
        public bool IsOnline
        {
            set;
            get;
        }

        [DataType(DataType.MultilineText)]
        [StringLength(512, ErrorMessage = "String may not be longer than 512 characters")]
        [PlaceHolder("Enter description here")]
        public string Description
        {
            set;
            get;
        }
        public DateTime? CreateAt
        {
            set;
            get;
        }
        public int? CreateBy
        {
            set;
            get;
        }
        public DateTime? UpdateAt
        {
            set;
            get;
        }
        public int? UpdateBy
        {
            set;
            get;
        }
    }

    public class MediaCategoryShort
    {
        public MediaCategoryShort()
        {
            IsNewspaper = false;
            IsTV = false;
            IsRadio = false;
            IsOnlineNews = false;
            IsOnline = false;
        }

        public bool IsNewspaper { get; set; }
        public bool IsTV { get; set; }
        public bool IsRadio { get; set; }
        public bool IsOnlineNews { get; set; }
        public bool IsOnline { get; set; }
    }
}